package text6;

import text6.IsData;

public class StrData {

    public static double str_data(String str) {
        // 先调用 is_data 方法判断字符串是否为有效数值
        if (!IsData.is_data(str)) {
            // 若不是有效数值，抛出异常
            throw new IllegalArgumentException("输入的字符串不是有效的数值");
        }
        // 若为有效数值，将字符串转换为 double 类型返回
        return Double.parseDouble(str);
    }

    public static void main(String[] args) {
        System.out.println("测试 str_data 方法:");
        try {
            // 测试计算有效数值字符串所表示的数值
            System.out.println("2025: " + str_data("2025"));
            System.out.println("3.14: " + str_data("3.14"));
            System.out.println("+1.23e-4: " + str_data("+1.23e-4"));
        } catch (IllegalArgumentException e) {
            // 捕获并输出异常信息
            System.out.println(e.getMessage());
        }
    }
}